package com.love.marriage.defaultAmountConfigRecord.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.love.marriage.defaultAmountConfig.vo.DefaultAmountConfigVo;
import com.love.marriage.defaultAmountConfigRecord.entity.DefaultAmountConfigRecord;
import com.love.marriage.defaultAmountConfigRecord.vo.DefaultAmountConfigRecordVo;

/**
 * 默认金额配置操作记录表 服务类
 * author: system
 * createDate: 2024-12-07
 * description: 默认金额配置操作记录管理
 * version: 1.0.0
 */
public interface DefaultAmountConfigRecordService extends IService<DefaultAmountConfigRecord> {

    /**
     * 分页查询操作记录
     */
    Page<DefaultAmountConfigRecordVo> getPage(Long pageNum, Long pageSize, DefaultAmountConfigRecordVo recordVo);

    /**
     * 查询单个操作记录详情
     */
    DefaultAmountConfigRecordVo queryDefaultAmountConfigRecord(Long id);

    /**
     * 根据配置ID查询操作记录
     */
    Page<DefaultAmountConfigRecordVo> getPageByConfigId(Long configId, Long pageNum, Long pageSize);

    /**
     * 记录新增操作
     */
    void recordInsertOperation(DefaultAmountConfigVo newConfig, String operationReason);

    /**
     * 记录修改操作
     */
    void recordUpdateOperation(DefaultAmountConfigVo oldConfig, DefaultAmountConfigVo newConfig, String operationReason);

    /**
     * 记录删除操作
     */
    void recordDeleteOperation(DefaultAmountConfigVo oldConfig, String operationReason);
}